package cn.xxm.ff.log.core.service;

import java.util.Map;
import java.util.Set;

/**
 * Created by xuxiaoming005 on 2018-08-13.
 */
public interface DesensitizationPolicy {

    /**
     * 脱敏日志参数
     * @param objs 参数数组
     * @param map 脱敏类型、脱敏字段
     * @param stringKillSwitch 脱敏字符串误杀开关
     * @return 脱敏日志参数
     */
    Object[] desensitizeArgs(Object[] objs, Map<String, Set<String>> map, boolean stringKillSwitch);

    /**
     *
     * @param formattedMessage
     * @param map
     * @return
     */
    String desensitizeFormattedMessage(String formattedMessage, Map<String, Set<String>> map);
}
